import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

/**
 * Created with IntelliJ IDEA.
 * Description:
 */
public class Practice1 {
    public static void main(String[] args) throws IOException {
        System.out.println("请输入要扫描的目录");
        Scanner scanner =new Scanner(System.in);
        String Filename =scanner.next();
        File rootFile =new File(Filename);
        if (!rootFile.exists()){
            System.out.println("该目录不存在");
            return;
        }
        if(!rootFile.isDirectory()){
            System.out.println("该文件不是目录");
            return;
        }else {
            System.out.println("请输入要查询文件的关键字");
            Scanner scanner1 =new Scanner(System.in);
            String token =scanner1.next();
            //用来存放找到的文件
            List<File> list =new ArrayList<>();
            //开始递归查找
            findFlie(rootFile,token,list);
            //如果没有找到文件，则提示
            if (list.size()==0){
                System.out.println("没有相关文件");
                return;
            }
            //如果找到文件，则提示并询问是否删除
            for (File file:list){
                System.out.println("已找到该目录："+file.getCanonicalFile());
                System.out.println("是否要删除？");
                System.out.println("Yes：删除，No：不删除");
                Scanner scanner2 =new Scanner(System.in);
                String ret =scanner2.next();
                if (ret.equals("Yes")){
                    file.delete();
                }
            }
        }

    }

    private static void findFlie(File rootFile, String token, List<File> list) {

        File[] files =rootFile.listFiles();
        //如果该目录下没有文件或目录，则返回
        if (files==null || files.length==0){
            return;
        }
        //遍历该目录下所有文件
        for (File file:files){
            if (!file.isDirectory()){
                if(file.getName().contains(token)){
                    list.add(file);
                }
            }else {
                findFlie(file,token,list);
            }
        }
    }
}
